/*******************************************************************
* ++
* Author        :	ThienTN
* Description   :	Utility.h in project HRManage
* 
* Mod. History  :	26/07/2012 - ThienTN
*
* --
*******************************************************************/
#ifndef UTILITY_H
#define UTILITY_H

#include "conio.h"
#include "string.h"
#include "sstream"
#include "iostream"
using namespace std;


class CEmployee;

/*
 * Create a Date struct 
 */
struct Date
{
	int m_nDate;
	int m_nMonth;
	int m_nYear;
};

/*
 * Create a node student struct
 */
struct Node
{
	CEmployee *info;
	struct Node *pNext;
	struct Node *pPrev;
};

/*
 * Create a list student struct
 */
struct List
{
	Node *pHead;
	Node *pTail;
};

/*
 * Enum for Graduated Type
 */
enum GRADTYPE
{
	BAD = 1,
	WEAK = 2,
	MEDIUM = 3,
	PRETTY = 4,
	GOOD = 5,
	EXCELLENT = 6
};

/*
 * Enum for Employee Type
 */
enum EMPLOYEETYPE
{
	STUDENT = 0,
	STAFF = 1,
	MANAGER = 2
};

/*
 *Prototypes of program
 */	
void CreateList(List *pList);
Node *CreateNode(CEmployee *pEmployee);
void AddHead(List *pList, Node *pNode);
void Menu();
void End();
string GetGradType(int n);
string GetEmpType(int n);
#endif